
// Boost Includes ==============================================================
#include <boost/python.hpp>
#include <boost/cstdint.hpp>

// Includes ====================================================================
#include <OpenSG/OSGAttachmentContainerPtr.h>
#include <OpenSG/OSGFieldContainerPtr.h>
#include <OpenSG/OSGFieldContainerType.h>
#include <OpenSG/OSGNodePtr.h>

// Using =======================================================================
using namespace boost::python;

// Declarations ================================================================
namespace  {

BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(osg_FieldContainerType_dump_overloads_0_2, dump, 0, 2)


}// namespace


// Module ======================================================================
void Export_src_pyste_FieldContainerType()
{
    class_< osg::FieldContainerType, bases< osg::DataType >  >("FieldContainerType", init< const osg::FieldContainerType& >())
//        .def(init< const char*, optional< const char*, const char*, osg::FieldContainerPtr (*)(), void (*)(), osg::FieldDescription**, unsigned int, bool > >())
        .def("getGroupId", &osg::FieldContainerType::getGroupId)
        .def("getFieldDescription", (osg::FieldDescription* (osg::FieldContainerType::*)(osg::UInt32) )&osg::FieldContainerType::getFieldDescription, return_internal_reference< 1 >())
        .def("getFieldDescription", (const osg::FieldDescription* (osg::FieldContainerType::*)(osg::UInt32) const)&osg::FieldContainerType::getFieldDescription, return_internal_reference< 1 >())
        .def("findFieldDescription", (osg::FieldDescription* (osg::FieldContainerType::*)(const osg::Char8*) )&osg::FieldContainerType::findFieldDescription, return_internal_reference< 1 >())
        .def("findFieldDescription", (const osg::FieldDescription* (osg::FieldContainerType::*)(const osg::Char8*) const)&osg::FieldContainerType::findFieldDescription, return_internal_reference< 1 >())
        .def("getNumFieldDescs", &osg::FieldContainerType::getNumFieldDescs)
        .def("getPrototype", &osg::FieldContainerType::getPrototype)
        .def("setPrototype", &osg::FieldContainerType::setPrototype)
        .def("isInitialized", &osg::FieldContainerType::isInitialized)
        .def("isAbstract", &osg::FieldContainerType::isAbstract)
        .def("isDerivedFrom", (bool (osg::FieldContainerType::*)(const osg::TypeBase&) const)&osg::FieldContainerType::isDerivedFrom)
        .def("isDerivedFrom", (bool (osg::FieldContainerType::*)(const osg::FieldContainerType&) const)&osg::FieldContainerType::isDerivedFrom)
        .def("isNode", &osg::FieldContainerType::isNode)
        .def("isNodeCore", &osg::FieldContainerType::isNodeCore)
        .def("isAttachment", &osg::FieldContainerType::isAttachment)
        .def("createFieldContainer", &osg::FieldContainerType::createFieldContainer)
        .def("createNode", &osg::FieldContainerType::createNode)
        .def("createNodeCore", &osg::FieldContainerType::createNodeCore)
        .def("createAttachment", &osg::FieldContainerType::createAttachment)
        .def("dump", &osg::FieldContainerType::dump, osg_FieldContainerType_dump_overloads_0_2())
    ;

}

